# 储存账号密码
user_password = {'张三': "123a."}
# 敏感字
no_user = ['笨', '蠢', '死']

if __name__=="__main__":


    while True:
        print("欢迎登录******会员登录系统******")
        print("1.注册")
        print("2.登录")
        print("0.退出")
        in_put = int(input("请输入您要进行的操作："))
        if in_put ==0:
            print("您已退出会员登录系统")
            exit()
        if in_put==1:
            print("------------欢迎来到注册界面-----------")
            while True:
                #用户名注册
                new_user = input("请输入需要注册的用户名：")
                new_user_list = list(new_user)
                if any(user_1 in new_user for user_1 in no_user) :
                   k=0
                   old_ = []
                   for i in new_user:
                       for j in no_user:
                           #找敏感字符
                           if i==j:
                               old_.append(new_user[k])
                               new_user_list[k]='*'
                               new_user = ''.join(new_user_list)
                               break
                       k+=1
                   print(f"{new_user}|用户名包含敏感词{old_},不可注册,重新输入")
                   continue

                print("用户名注册成功！")
                   # 密码注册
                while True:
                    new_password = input("请输入需要注册的密码：")
                    if len(new_password) < 6:
                        print("您的密码长度小于6，请重新输入（至少6位，包含数字、字母和特殊字符）")
                        continue
                    # 找字母
                    i_ = 0
                    for i in new_password:
                        if 'a' <= i < 'z' or 'A' <= i <= 'Z':
                            i_ = 1
                            break
                    if i_ == 0:
                        print("您的密码无字母，请重新输入（至少6位，包含数字、字母和特殊字符）")
                        continue

                    # 找特殊字符
                    j_ = 0
                    for j in new_password:
                        if 'a' <= j <= 'z' or 'A' <= j <= 'Z':
                            pass
                        elif '0' <= j <= '9':
                            pass
                        else:
                            j_ = 1
                    if j_ == 0:
                        print("您的密码无特殊字符，请重新输入（至少6位，包含数字、字母和特殊字符）")
                        continue

                    print("注册成功！")
                    break
                print("您好！")
                print(f'您注册的用户名为:{new_user}')
                print(f"您注册的密码为 :{new_password}")
                user_password[new_user] = new_password
                break
            continue
        #登录
        if in_put == 2:
            print("------------欢迎来到登录界面-----------")
            #可登录的次数
            i = 3
            while i > 0:
                _user = input("请输入您的用户名：")
                _password = input("请输入您的密码：")

                #验证账号
                if _user not in user_password :
                    i -= 1
                    print(f"您的账号输入错误，您还有{i}次输入的机会")
                    continue

                # 密码
                if user_password[_user] != _password:
                    i -= 1
                    print(f"您的密码输入错误，您还有{i}次输入的机会")
                    continue

                # 登录成功
                print("*************************")
                print("     恭喜您，登录成功！    ")
                print("*************************")
                exit()
            print("已自动退出，请重新登陆会员登录系统，谢谢")
            print("")


                #  不可能账号错误的情况下继续检查密码  有越界问题
                # # 正确的账号密码  有越界问题
                # if _user in user_password and user_password[_user] == _password:
                #     print("*************************")
                #     print("     恭喜您，登录成功！    ")
                #     print("*************************")
                #     exit()

                # #验证账号    账号和密码一起检验会越界
                # flag = 0
                # if _user not in user_password :
                #     i -= 1
                #     #print(f"您的账号输入错误，您还有{i}次输入的机会")
                #     flag = 0
                #     # 验证账号和密码
                #     if user_password[_user] != _password:
                #         flag = 1
                #         print(f"您的账号和密码都输入错误，您还有{i}次输入的机会")
                #     if flag == 0 :
                #         print(f"您的账号输入错误，您还有{i}次输入的机会")
                #     continue

                # #验证密码
                # if user_password[_user] != _password :
                #     i -= 1
                #      print(f"您的密码输入错误，您还有{i}次输入的机会")
                #     flag = 0
                #     # 验证账号和密码
                #     if _user not in user_password:
                #         flag = 1
                #         print(f"您的账号输入错误，您还有{i}次输入的机会")
                #     if flag == 0:
                #         print(f"您的密码输入错误，您还有{i}次输入的机会")
                #     continue

                # if _user not in user_password and user_password[_user] != _password :
                #     i -= 1
                #     print(f"您的账号和密码都输入错误，您还有{i}次输入的机会")
                #     continue

                # #登录成功
                # print("*************************")
                # print("     恭喜您，登录成功！    ")
                # print("*************************")
                # exit()

                # if flag == 1 :
                #     print(f"您的账号输入错误，您还有{i}次输入的机会")
                #     continue
                # elif flag == 2:
                #     print(f"您的密码输入错误，您还有{i}次输入的机会")
                #     continue
                # else :
                #     print(f"您的密码和账号都输入错误，您还有{i}次输入的机会")
                #     continue

            #print("已自动退出，请重新登陆会员登录系统，谢谢")




